文档

通过阿里云Milvus与PAI搭建高效的检索增强生成(RAG)系统

更新时间:

阿里云Milvus现已无缝集成于阿里云PAI平台,一站式赋能用户构建高性能的检索增强生成(RAG)系统。您可以利用Milvus作为向量数据的实时存储与检索核心,高效结合PAI和LangChain技术栈,实现从理论到实践的快速转化,搭建起功能强大的RAG解决方案。

背景信息

随着AI技术的飞速发展,生成式人工智能在文本生成、图像生成等领域展现出了令人瞩目的成就。然而,在广泛应用大语言模型(LLM)的过程中,一些固有局限性逐渐显现:

  • 领域知识局限:大语言模型通常基于大规模通用数据集训练而成,这意味着它们在处理专业垂直领域的具体应用时可能缺乏针对性和深度。

  • 信息更新滞后:由于模型训练所依赖的数据集具有静态特性,大模型无法实时获取和学习最新的信息与知识进展。

  • 模型误导性输出:受制于数据偏差、模型内在缺陷等因素,大语言模型有时会出现看似合理实则错误的输出,即所谓的“大模型幻觉”。

为克服这些挑战,并进一步强化大模型的功能性和准确性,检索增强生成技术RAG(Retrieval-Augmented Generation)应运而生。这一技术通过整合外部知识库,能够显著减少大模型虚构的问题,并提升其获取及应用最新知识的能力,从而实现更个性化和精准化的LLM定制。

RAG技术架构的核心为检索和生成。其中,检索部分采用了高效的向量检索引擎和向量数据库技术,例如基于开源库Faiss、Annoy以及HNSW算法优化构建的Milvus系统,极大地提升了对大规模数据进行快速检索和精确分析的能力。这样的设计使得RAG能够在必要时即时调用相关领域或最新信息,有效弥补了传统大语言模型的不足之处。

前提条件

使用限制

Milvus实例和PAI(EAS)须在相同地域下。

操作流程

步骤一:通过PAI部署RAG系统

  1. 进入模型在线服务EAS。

    1. 登录PAI控制台

    2. 在左上角顶部菜单栏选择目标地域。

    3. 在左侧导航栏选择模型部署 > 模型在线服务(EAS),在下拉框中选择目标工作空间后单击进入EAS

  2. PAI-EAS模型在线服务页面,单击部署服务

  3. 部署服务页面,选择大模型RAG对话系统

  4. 部署大模型RAG对话系统页面,配置以下关键参数,其余参数可使用默认配置,更多参数详情请参见大模型RAG对话系统

    参数

    描述

    基本信息

    服务名称

    您可以自定义。

    模型来源

    使用默认的开源公共模型

    资源配置

    模型类别

    通常选择通义千问7B。例如,Qwen1.5-7b。

    资源配置选择

    按需选择GPU资源配置。例如,ml.gu7i.c16m30.1-gu30。

    向量检索库设置

    版本类型

    选择Milvus

    数据库文件夹名称

    您在Milvus中自定义的Collection名称。

    访问地址

    Milvus实例的内网地址。您可以在Milvus实例的实例详情页面查看。

    代理端口

    Milvus实例的Proxy Port。您可以在Milvus实例的实例详情页面查看。

    账号

    配置为root。

    密码

    配置为创建Milvus实例时,您自定义的root用户的密码。

    Collection删除

    是否删除已存在的Collection。取值如下:

    • True:删除同名的Collection,再创建新的Collection。如果不存在同名Collection,则直接进行创建。

    • False:保留现有的同名Collection,新加入的数据将追加到该Collection中。

    专有网络配置

    VPC

    创建Milvus实例选择时的VPC、交换机和安全组。您可以在Milvus实例的实例详情页面查看。

    交换机

    安全组名称

  5. 单击部署

    服务状态变为运行中时,表示服务部署成功。

  6. 模型在线服务(EAS)页面,单击查看Web应用,进入WebUI页面。

步骤二:在WebUI中使用Milvus向量检索

  1. 测试连通性。

    如下图所示,在RAG服务WebUI界面的Settings选项卡中,系统已自动识别并应用了部署服务时配置的向量检索库设置,并且该设置不支持修改。您可以单击Connect Milvus,来验证Milvus连接是否正常。

    image

    连接正常后Connection Info显示Connect Milvus success。

  2. 上传数据。

    如下图所示,您可以在RAG服务WebUI界面的Upload选项卡中,上传TXT或HTML类型的用户知识库文档。

    本文以PAI.txt例,当完成上传后,会显示Upload 1 files [ PAI.txt, ] Success!

    image

    您还可以在Milvus实例的实例详情页,单击右上角的Attu Manager,然后输入Milvus实例的用户名和密码,可以查看写入的数据和向量等信息。Attu的相关操作,请参见Attu工具管理

  3. 向量检索。

    如下图所示,您可以在RAG服务WebUI界面的Chat选项卡中,选择RAG (Retrieval + LLM),然后进行向量检索等一系列实验。

    image

相关文档

  • 本页导读 (1)
文档反馈